package model;

import java.io.Serializable;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.ManyToOne;
import org.hibernate.annotations.Cascade;
import org.hibernate.annotations.CascadeType;

@Entity
public class Profesional extends Persona implements Serializable
{
	private String matricula;
	@ManyToOne
	@Cascade({ CascadeType.ALL })
	private Servicio servicio;
	@ManyToOne
	@Cascade({ CascadeType.ALL })
	private Especialidad especialidad;

	public Profesional()
        {
		super();
	}

	public Profesional(String nombre, String apellido, String matricula,
			String servicio, String especialidad)
        {
		super();
		this.setNombres(nombre);
		this.setApellido(apellido);
		this.matricula = matricula;
		this.servicio = new Servicio(servicio);
		this.especialidad = new Especialidad(especialidad);
	}

	public Profesional(String nombre, String apellido, String matricula)
        {
		super();
		this.setNombres(nombre);
		this.setApellido(apellido);
		this.matricula = matricula;

	}

	public Profesional(int id, String nombre, String apellido,
			String matricula, String servicio, String especialidad)
        {
		super();
		this.setId(id);
		this.setNombres(nombre);
		this.setApellido(apellido);
		this.matricula = matricula;
		this.servicio = new Servicio(servicio);
		this.especialidad = new Especialidad(especialidad);
	}
	public String getMatricula()
        {
		return matricula;
	}

	public void setMatricula(String matricula)
        {
		this.matricula = matricula;
	}

	public Servicio getServicio()
        {
		return servicio;
	}

	public void setServicio(Servicio servicio)
        {
		this.servicio = servicio;
	}

	public Especialidad getEspecialidad()
        {
		return especialidad;
	}

	public void setEspecialidad(Especialidad especialidad)
        {
		this.especialidad = especialidad;
	}

}